<?php echo "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n"; ?>
<wsdl:definitions xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:tns="$webroot/soap/access" targetNamespace="$webroot/soap/access" name="Aleafs_Sem_Access">
	<wsdl:types>
		<xsd:schema targetNamespace="$webroot/soap/access">
			<xsd:element name="AuthHeader" type="tns:AuthHeader" />
			<xsd:complexType name="AuthHeader">
				<xsd:sequence>
					<xsd:element name="appname">
						<xsd:simpleType> 
							<xsd:restriction base="xsd:string"> 
								<xsd:enumeration value="baidu" /> 
							</xsd:restriction> 
						</xsd:simpleType> 
					</xsd:element>
					<xsd:element name="username" type="xsd:string" />
					<xsd:element name="machine" type="xsd:string" />
					<xsd:element name="nodename" type="xsd:string" />
				</xsd:sequence>
			</xsd:complexType>

			<xsd:element name="ResHeader" type="tns:ResHeader" />
			<xsd:complexType name="ResHeader">
				<xsd:sequence>
					<xsd:element name="status" type="xsd:int" />
					<xsd:element name="description" type="xsd:string" />
				</xsd:sequence>
			</xsd:complexType>

			<xsd:element name="ResCallBack" type="tns:ResCallBack" />
			<xsd:complexType name="ResCallBack">
				<xsd:sequence>
					<xsd:element name="feedback" type="xsd:string" />
					<xsd:element name="function" type="xsd:string" />
					<xsd:element name="args" type="xsd:string" minOccurs="0" maxOccurs="unbounded" />
				</xsd:sequence>
			</xsd:complexType>
			
			<xsd:element name="PermRow" type="tns:PermRow" />
			<xsd:complexType name="PermRow">
				<xsd:sequence>
					<xsd:element name="unit" type="xsd:string" />
					<xsd:element name="type" type="xsd:int" />
					<xsd:element name="begdate" type="xsd:date" />
					<xsd:element name="enddate" type="xsd:date" />
					<xsd:element name="balance" type="xsd:int" />
				</xsd:sequence>
			</xsd:complexType>

			<xsd:element name="Permissions" type="tns:Permissions" />
			<xsd:complexType name="Permissions">
				<xsd:sequence>
					<xsd:element name="perms" type="tns:PermRow" minOccurs="0" maxOccurs="unbounded" />
				</xsd:sequence>
			</xsd:complexType>

			<xsd:element name="ClientAgent" type="tns:ClientAgent" />
			<xsd:complexType name="ClientAgent">
				<xsd:sequence>
					<xsd:element name="software" type="xsd:string" />
					<xsd:element name="version" type="xsd:string" />
				</xsd:sequence>
			</xsd:complexType>
			
			<xsd:element name="ClientAgent_HB" type="tns:ClientAgent_HB" />
			<xsd:complexType name="ClientAgent_HB">
				<xsd:sequence>
					<xsd:element name="software" type="xsd:string" />
					<xsd:element name="version" type="xsd:string" />
				</xsd:sequence>
			</xsd:complexType>
			
			<xsd:element name="ClientAgent_VS" type="tns:ClientAgent_VS" />
			<xsd:complexType name="ClientAgent_VS">
				<xsd:sequence>
					<xsd:element name="software" type="xsd:string" />
					<xsd:element name="version" type="xsd:string" />
				</xsd:sequence>
			</xsd:complexType>
			
		</xsd:schema>
	</wsdl:types>

	<wsdl:message name="AuthHeader">
		<wsdl:part name="AuthHeader" element="tns:AuthHeader" ></wsdl:part>
	</wsdl:message>

	<wsdl:message name="ResHeader">
		<wsdl:part name="ResHeader" element="tns:ResHeader" ></wsdl:part>
	</wsdl:message>

	<wsdl:message name="ClientAgent">
		<wsdl:part name="ClientAgent" element="tns:ClientAgent" ></wsdl:part>
	</wsdl:message>
	
	<wsdl:message name="ClientAgent_HB">
		<wsdl:part name="ClientAgent_HB" element="tns:ClientAgent_HB" ></wsdl:part>
	</wsdl:message>
	
	<wsdl:message name="ClientAgent_VS">
		<wsdl:part name="ClientAgent_VS" element="tns:ClientAgent_VS" ></wsdl:part>
	</wsdl:message>

	<wsdl:message name="ResHeartbeat">
		<wsdl:part name="ResCallBack" element="tns:ResCallBack" ></wsdl:part>
	</wsdl:message>

	<wsdl:message name="ResPermission">
		<wsdl:part name="ResPermission" element="tns:Permissions" ></wsdl:part>
	</wsdl:message>

	<wsdl:portType name="PortAccess">
		<wsdl:operation name="heartbeat">
			<wsdl:input message="tns:ClientAgent_HB" ></wsdl:input>
			<wsdl:output message="tns:ResHeartbeat" ></wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="permission">
			<wsdl:input message="tns:ClientAgent" ></wsdl:input>
			<wsdl:output message="tns:ResPermission" ></wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="version">
			<wsdl:input message="tns:ClientAgent_VS" ></wsdl:input>
			<wsdl:output message="tns:ClientAgent_VS" ></wsdl:output>
		</wsdl:operation>
	</wsdl:portType>

	<wsdl:binding name="SoapBinding" type="tns:PortAccess">
		<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
		<wsdl:operation name="permission">
			<soap:operation soapAction="$webroot/soap/access/permission" />
			<wsdl:input>
				<soap:header message="tns:AuthHeader" part="AuthHeader" use="literal" />
				<soap:body use="literal" />
			</wsdl:input>
			<wsdl:output>
				<soap:header message="tns:ResHeader" part="ResHeader" use="literal" />
				<soap:body use="literal" />
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="heartbeat">
			<soap:operation soapAction="$webroot/soap/access/heartbeat" />
			<wsdl:input>
				<soap:header message="tns:AuthHeader" part="AuthHeader" use="literal" />
				<soap:body use="literal" />
			</wsdl:input>
			<wsdl:output>
				<soap:header message="tns:ResHeader" part="ResHeader" use="literal" />
				<soap:body use="literal" />
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="version">
			<soap:operation soapAction="$webroot/soap/access/version" />
			<wsdl:input>
				<soap:header message="tns:AuthHeader" part="AuthHeader" use="literal" />
				<soap:body use="literal" />
			</wsdl:input>
			<wsdl:output>
				<soap:header message="tns:ResHeader" part="ResHeader" use="literal" />
				<soap:body use="literal" />
			</wsdl:output>
		</wsdl:operation>
	</wsdl:binding>

	<wsdl:service name="AccessService">
		<wsdl:port binding="tns:SoapBinding" name="AccessService">
			<soap:address location="$webroot/soap/access" />
		</wsdl:port>
	</wsdl:service>
</wsdl:definitions>
<!--COMPLETE-->
